/**
 * 项目名称（软件名称）：忠旺机械物资管理系统(mms)
 * 研发设计单位：忠旺机械设备制造有限公司机械设计院智能控制设计科设计与研发。
 * 版权所有：忠旺机械设备制造有限公司
 * 注：本项目的一切技术专利，使用规范归解释权由忠旺机械设备制造有限公司所有。
 * 软件版本：Ver 1.0.0
 * 文件路径：com.zhongwang.mms.module.purchase.model.adjust
 * 创建时间：2020年05月04日 10时35分
 **/
package com.zhongwang.mms.module.purchase.model.adjust;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import java.util.Date;

/**
 * @ClassName： PAdjustModel
 * @Description：
 * @Author： 徐一贺
 * @Date： 2020/5/4 10:35
 * @Version： V1.0
 **/
@Data
public class PAdjustModel {
    /**
     * 主键
     */
    private Integer adjId;
    /**
     * 主键们
     */
    private String adjIds;

    /**
     * 外键：依赖库存表主键。被调整/
     */
    private Integer adjItyId;

    /**
     * 被调整/调整的物料描述。如果是
     */
    private String adjMatDesc;

    /**
     * 被调整/调整的SAP物料编码
     */
    private String adjMatCode;

    /**
     * 被调整/调整的数量。如果是新增
     */
    private Double adjNum;

    /**
     * 被调整/调整的单位。如果是新增
     */
    private String adjUnit;

    /**
     * 被调整/调整的单价
     */
    private Double adjPrice;

    /**
     * 被调整/调整的金额，计算字段。
     */
    private Double adjAmount;

    /**
     * 被调整/调整的跟踪号
     */
    private String adjTrackCode;

    /**
     * 被调整/调整的项目编码
     */
    private String adjProCode;

    /**
     * 被调整/调整的项目名称
     */
    private String adjProName;

    /**
     * 外键：依赖仓库信息表主键，被调
     */
    private Integer adjWhiId;
    /**
     * 外键：依赖仓库信息表仓库名
     */
    private String adjWhiIdName;

    /**
     * 被调整/调整的区位
     */
    private String adjPosition;

    /**
     * 被调整/调整的记账日期
     */
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    private Date adjBookkeepingDate;

    /**
     * 被调整/调整的特殊说明
     */
    private String adjSpec;

    /**
     * 被调整/调整的原因
     * ，如果是盘
     */
    private String adjReason;

    /**
     * 被调整/调整的库存状态，在库类
     */
    private Integer adjStockType;
    /**
     * 被调整/调整的库存状态，在库类
     */
    private String adjStockTypeText;

    /**
     * 外键：依赖外购件库损益调整申请
     */
    private Integer adjAjaId;

    /**
     * 外键：自依赖，用于成对信息排序
     */
    private Integer adjPid;

    /**
     * 外键：依赖盘点计划明细表主键
     */
    private Integer adjCdlId;

    /**
     * 外键：调整出入库单主键
     */
    private Integer adjOdrId;

    /**
     * 外键：调整出入库明细主键
     */
    private Integer adjOdaId;

    /**
     * 调整批号：AC+年（只保留后两位
     */
    private String adjCode;

    /**
     * 外键：依赖用户表主键.申请人
     */
    private Integer adjAppId;
    /**
     * 外键：依赖用户表主键.申请人
     */
    private String adjApplicant;

    /**
     * 申请时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    private Date adjAppDatetime;

    /**
     * 外键：依赖用户表主键.审核人
     */
    private Integer adjCheckerId;

    /**
     * 审核时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    private Date adjCheckerDatetime;

    /**
     * 调整类型：1是申请调整，2是盘点
     */
    private Integer adjType;
    /**
     * 调整类型：1是申请调整，2是盘点
     */
    private Integer adjTypes;

    /**
     * 是否是新增标识：1是新增，0是非
     */
    private Integer adjNewFlag;

    /**
     * :调整状态
     * :1是未审核，2是已审
     */
    private Integer adjStatus;

    /**
     * 调整身份:1是调整前，2是调整后.
     */
    private Integer adjIdentity;
    /**
     * 损溢差额
     */
    private Double adjDiffAmount;
    /**
     * 损溢数量
     */
    private Double adjPalVal;

    /**
     * 调整差值 库存数量减去调整结果数量
     */
    private Double adjDValue;
    /**
     * 调整模式：price=调整金额，num=调整数量，desc=调整物料描述
     */
    private String adjModel;

    /**
     * 机械备件库备注类型
     */
    private String adjRemarkType;
    /**
     * 申请日期
     */
    private String dateTimeRange;
    /**
     * 开始时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date startDate;
    /**
     * 结束时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date endDate;


    private Integer ityId;

    private String ityMatCode;

    private String ityMatDesc;

    private String ityProCode;

    private String ityProName;

    private String ityPart;

    private Double ityNum;

    private Double ityWeight;

    private Double ityAvaNum;

    private Double ityAvaWeight;

    private String ityNumUnit;

    private String ityWeightUnit;

    private Double ityPrice;

    private Double ityAmount;

    private String ityBrand;

    private String itySat;

    private String ityPosition;

    private Integer ityWhiId;

    private String itySapCode;

    private String ityTrackCode;

    private String ityRemark;

    private Date ityBookkeepingDate;

    private Integer ityDataStatus;

    private Integer ityRowNo;

    private Integer ityStockType;


    private Integer odaId;

    private Integer odaRushId;

    private Integer odaOdrId;

    private Integer odaType;

    private String odaProCode;

    private String odaProName;

    private String odaPart;

    private String odaMatCode;

    private String odaMatDesc;

    private Double odaNum;

    private Double odaWeight;

    private String odaPosition;

    private Integer odaWhiId;

    private String odaNumUnit;

    private String odaWeightUnit;

    private Double odaTotalPrice;

    private String odaBrand;

    private String odaSat;

    private String odaRemark;

    private String odaBackDate;

    private String odaSapCode;

    private String odaTrackCode;

    private Integer odaItyId;

    private String odaPurCode;

    private String odaSupplier;

    private String odaPlanDept;

    private Integer odaRedFlag;

    private Date odaRedDate;

    private String odaRedUser;

    private Double odaNumPrice;

    private Double odaWeightPrice;

    private String odaSpec;
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    private Date odaBookkeepingDate;

    private String odaTakeType;

    private Integer odaOutWhiId;

    private Integer odaInWhiId;

    private Integer proId;

    private String proCode;

    private String proName;

    private Integer proNum;

    private Integer proProductionStatus;

    private String proPart;

    private Integer whiId;

    private String whiCode;

    private String whiName;

    private String whiAddress;

    private String whiRemark;

    private Integer depId;

    private String depName;

    private Integer depOrderNo;

    private Integer depStatus;

    private Integer depPid;

    private Date depCreateTime;

    private String ityIds;
}